package io.hilo.example.app;

import org.apache.shiro.spring.web.ShiroFilterFactoryBean;
import org.hilo.boot.core.spring.BeanPostAdapter;

/**
 * 自定义Shiro配置
 * @author zollty
 * @since 2018年5月25日
 */
// @Configuration // 自定义Shiro配置，如果需要可以启用
public class ShiroFilterConfig extends BeanPostAdapter {

    public ShiroFilterConfig(ShiroFilterFactoryBean shiroFilter) {
        
        // DEMO 1
        // 自定义登录页面地址
//        shiroFilter.setLoginUrl("/my-login.html");
        
        // DEMO 2
        // 无需登录即可访问 "/app/**"， 即将此URL排除登录拦截
        // PS: 现在 支持在application.yml配置文件中配置，例如 hilo.admin.custom-public-urls: /app/**
//        Map<String, String> linkMap = new LinkedHashMap<>();
//        linkMap.put("/app/**", "anon");
//        linkMap.putAll(shiroFilter.getFilterChainDefinitionMap());
//        shiroFilter.setFilterChainDefinitionMap(linkMap);
        
    }

}
